﻿#region Assembly mscorlib.dll, v4.0.30319
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\mscorlib.dll
#endregion

using System;
using System.Runtime.InteropServices;
using System.Security;

namespace System.Security.Policy
{
    // Summary:
    //     Provides a base class from which all objects to be used as evidence must
    //     derive.
    //[Serializable]
    [ComVisible(true)]
    public abstract class EvidenceBase
    {
        // Summary:
        //     Initializes a new instance of the System.Security.Policy.EvidenceBase class.
        //
        // Exceptions:
        //   System.InvalidOperationException:
        //     An object to be used as evidence is not serializable.
        protected EvidenceBase(){}

        // Summary:
        //     Creates a new object that is a complete copy of the current instance.
        //
        // Returns:
        //     A duplicate copy of this evidence object.
        [SecuritySafeCritical]
        public virtual EvidenceBase Clone()
        {
            return (EvidenceBase) this.MemberwiseClone();
        }
    }
}
